﻿using System;
namespace Ymatou.API.Common
{
    /// <summary>
    /// 客户端默认调用
    /// </summary>
    public interface IClient
    {
        /// <summary>
        /// 
        /// </summary>
        /// <param name="ApiName"></param>
        /// <param name="JsonStr"></param>
        /// <param name="HttpGet"></param>
        /// <returns></returns>
        Object Execute(string ApiName, string JsonStr, Boolean HttpGet);
        /// <summary>
        /// 普通接口
        /// </summary>
        /// <param name="request"></param>
        /// <returns></returns>
        BaseResponseModel<T> Execute<T>(BaseRequestModel<T> request) where T : IResponse;
        /// <summary>
        /// 文件上传接口
        /// </summary>
        /// <typeparam name="T"></typeparam>
        /// <param name="request"></param>
        /// <returns></returns>
        BaseResponseModel<T> Execute<T>(IFileRequest<T> request) where T : IFileResponse;
    }
}
